With the development of digital techniques, especially with the widespread application of the internet, the amount of digital files are increasing explosively every day. Storing and managing the data files being produced daily is increasingly problematic. To solve this problem, small files totaling 0-100 KBs are appended one by one aggregate them into an aggregation file, which is then stored. That is, the small files are stored one by one until the aggregation file is full. The aggregation file stores a plurality of small files using the append-only technique resulting in the writing process of the small files requiring to be changed from a conventional random disk IO into a sequential disk IO. The index of the plurality of small files can be maintained in memory so that only one physical disk IO is needed to read the small file content, which decreases the file system inode usage.
Furthermore, some small files of the aggregation file may be updated or deleted when being accessed. However, the filling method for the aggregation is based on an append-only technique, which with lapse of the time results in a lot of “unused space” or “deleted space” in a full aggregation file. This “unused space” or “deleted space” cannot be used again directly and causes wasted space. Therefore, it is desired to reclaim the “unused space” or “deleted space” so as to reduce the storing cost and the wasted storage space and then increase the usage of the storage space.